ADDLW         : ( ADD Litéral and W )
Additionner le registre W et une valeur immédiate , la somme est stockée en W
( la série PIC 16C5x ne comprend pas cette instruction)

( W ) + v   ->   ( W )

Nombre de cycle d'horloge : 1

Indicateurs positionnés
:                                                      

C si retenue ( C=1 )
DC si la somme des quatre bits de poids faible est > 15 ( DC=1 )
Z si la somme est nulle ( Z=1 )

Syntaxe :   

Addlw  0x0F               W + Ox0F le résultat est  stocké dans W


ADDWF         : ( ADD W and F )
Additionner le registre W et ( f ) , la somme est stockée en ( d )
( W ) + ( f )   ->   ( d )

f est l'emplacement mémoire d 'un registre

Nombre de cycle d'horloge : 1

Indicateurs positionnés
:                                                      

C si retenue ( C=1 )
DC si la somme des quatre bits de poids faible est > 15 ( DC=1 )
Z si la somme est nulle ( Z=1 )

d est paramétrable
si d= 0 le résultat va dans le registre W
si d= 1 le résultat va dans le registre f


Exemple :   

#define W  0                       on affecte 0 à la variable W utilisée ci - après
Movf  valeur1, W              on met la valeur 1 dans le registre W
Addwf  valeur2, W            valeur 1 + valeur 2    stocké dans W



ANDLW         : ( AND Litéral with W )
Opération " ET " entre le contenu du registre W et une constante c

( W ) AND c   ->   ( W )

Nombre de cycle d'horloge : 1
Indicateurs positionnés :                                                    

Z si le résultat stocké dans W est nul ( Z=1 )

Exemple :   

Port_A   equ    05h            on affecte 05 à la variable Port_A utilisée ci - après
#define W     0                   on affecte 0 à la variable W utilisée ci - après
Movf  Port_A, W              on met le contenu du port A dans le registre W
Andlw  55h                       on masque un bit sur 2   ( 55 h = 0101 0101 )



ANDWF         : ( AND W with F )
Opération " ET " entre le contenu du registre W et f le résultat est en d

( W ) AND ( f )   ->   ( d )

Nombre de cycle d'horloge : 1

Indicateurs positionnés
:                                                   

Z si le résultat stocké dans W ou f est nul ( Z=1 )

d est paramétrable
si d= 0 le résultat va dans le registre W
si d= 1 le résultat va dans le registre f

Exemple :   

R_etat   equ    03h            on affecte 03 à la variable R_etat  utilisée ci - après
Movlw 00000111b           on met le contenu 00000111  dans le registre W
Andwf  R_etat, F             on masque et on configure le registre d' état